#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
//
//int digui(int n) {
//    if (n == 1 || n == 2)
//        return 1;
//    else
//        return digui(n - 1) + digui(n - 2);
//}
//
//int diedai(int n) {
//    int a = 1;
//    int b = 1;
//    int c = 1;
//    while (n - 2) {
//        a = b;
//        b = c;
//        c = a + b;
//        n--;
//    }
//    return c;
//}
//
//int  main() {
//
//    int n = 0;
//    while (scanf("%d", &n) != EOF) {
//        int a = digui(n);
//        int b = diedai(n);
//        printf("%d %d\n", a, b);   
//    }
//    return 0;
//}

//int Fun(int n, int k) {
//	if (k == 0)
//		return 1;
//	else
//		return n * Fun(n, k - 1);
//}
//
//int main() {
//
//	int n = 0;	int k = 0;
//	while (scanf("%d %d", &n, &k) != EOF) {
//		
//		int ret = Fun(n, k);
//		printf("%d\n", ret);
//	}
//	return 0;
//}


//int DigitSum(int n) {
//	if (n < 10)
//		return n;
//	else
//		return n % 10 + DigitSum(n / 10);
//}
//
//int main() {
//
//	int n = 0;
//	while (scanf("%d", &n) != EOF) {
//		int ret = DigitSum(n);
//		printf("%d\n", ret);
//	}
//
//	return 0;
//}

//int Fcn1(int n) {
//	if (n == 0)
//		return 1;
//	else
//		return n * Fcn1(n - 1);
//}
//
//int Fcn2(int n) {
//	int i = 0;
//	int ret = 1;
//	for (i = 1; i <= n; i++) {
//		ret *= i;
//	}
//	return ret;
//}
//
//int main() {
//
//	int n = 0;
//	while (scanf("%d", &n) != EOF) {
//		int a = Fcn1(n);
//		int b = Fcn2(n);
//		printf("%d %d\n", a, b);
//	}
//
//	return 0;
//}

//void print(int n) {
//	if (n < 10) {
//		printf("%d ", n);
//	}
//	else {
//		print(n / 10);
//		printf("%d ", n % 10);
//	}
//
//}
//
//int main() {
//	
//	int n = 0;
//	while (scanf("%d", &n) != EOF) {
//		print(n);
//	}
//
//	return 0;
//}

// 10 00000000 00000000 00000000 00001010
//  9 00000000 00000000 00000000 00001001
//    00000000 00000000 00000000 00001000

//int main() {
//
//	int arr[] = { 1,2,3,4,5,1,2,3,4 };
//	int i = 0;	
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	int ret = arr[0];
//
//	for(i = 1; i < sz; i++){
//		ret = ret ^ arr[i];
//	}
//	printf("%d\n", ret);
//	
//	return 0;
//}

//int main() {
//
//	int a = 3;
//	int b = 5;
//	a = a ^ b;
//	b = a ^ b;
//	a = a ^ b;
//
//	printf("%d %d\n", a, b);
//
//	return 0;
//}

int main() {

	int n = 0;
	while (scanf("%d", &n) != EOF) {
		int m = n >> 1;
		int i = 0;
		for (i = 1; i <= 31; i += 2) {
			printf("%d ", n & 1);
			n = n >> 1;
		}
		printf("\n");
		for (i = 2; i <= 32; i += 2) {
			printf("%d ", m & 1);
			m = m >> 1;
		}
	}

	return 0;
}